/**
* Author: fulishang
* Create Time  : 2016年4月24日,下午11:26:06
* Modify Time :
* Desc  : 
*/
package com.sam.hr.dao;

import java.util.List;

import com.sam.hr.common.dao.BaseDao;
import com.sam.hr.domain.Attend;
import com.sam.hr.domain.AttendType;
import com.sam.hr.domain.Employee;

public interface AttendDao extends BaseDao<Attend>{

	/**
	 * 根据员工／月份查询员工的出勤记录
	 * @param emp
	 * @param month
	 * @return 该员工在指定月份下的全部出勤记录
	 */
	List<Attend> findByEmpAndMonth(Employee emp, String month);

	/**
	 * 根据员工／日期／上下班查询该员工的打卡记录
	 * @param emp
	 * @param dutyDay
	 * @return 该员工某天上班或下班的打卡记录
	 */
	List<Attend> findByEmpAndDutyDay(Employee emp, String dutyDay);

	/**
	 * 根据员工／日期／上下班查询该员工的打卡记录集合
	 * @param emp
	 * @param dutyDay
	 * @param isCome
	 * @return 该员工的某天上班或下班打卡记录
	 */
	Attend findByEmpAndDutyDayAndCome(Employee emp, String dutyDay, boolean isCome);

	/**
	 * 查看员工前三天的非正常打卡记录
	 * @param emp
	 * @param type
	 * @return 该员工的前三天非正常打卡记录
	 */
	List<Attend> findByEmpUnAttend(Employee emp, AttendType type);



}
